
SOURCES_NODO=Nodo.java NodoException.java Host.java HostException.java Track.java TrackException.java Request.java RequestType.java Response.java NodoThread.java NodoThreadException.java
SOURCES_CLIENTE=Cliente.java ClienteException.java Host.java HostException.java Request.java RequestType.java Response.java Track.java TrackException.java

CLASSFILES_NODO = $(SOURCES_NODO:%.java=%.class) 'NodoThread$$1.class'
CLASSFILES_CLIENTE = $(SOURCES_CLIENTE:%.java=%.class)

OBJFILES_NODO = $(SOURCES_NODO:%.java=%.o) 'NodoThread$$1.o'
OBJFILES_CLIENTE = $(SOURCES_CLIENTE:%.java=%.o)

all: nodo cliente

nodo: $(OBJFILES_NODO)
	gcj --main=Nodo $(OBJFILES_NODO) -o $@

cliente: $(OBJFILES_CLIENTE)
	gcj --main=Cliente $(OBJFILES_CLIENTE) -o $@ 

'NodoThread$$1.o':
	gcj -O3 -c -o 'NodoThread$$1.o' 'NodoThread$$1.class'

%.o:%.class
	gcj -O3 -c -o $@ $< 

%.class:%.java
	javac $<

clean:
	rm -f $(OBJFILES_NODO) $(OBJFILES_CLIENTE) $(CLASSFILES_NODO) $(CLASSFILES_CLIENTE) nodo cliente